package com.myzl.common.utils;

/**
 * @author Administrator
 */
public class StreamUtil {

    /**
     * 获取rtsp地址
     * rtsp://admin:hc@123456@10.10.10.200:554/Streaming/Channels/101?videoCodecType=H.264
     * @param userName 海康用户名
     * @param password 海康密码
     * @param channel 海康通道
     * @param ip 海康ip
     * @param port 海康端口
     * @return rtsp 地址
     */
    public static String getRtspUrl(String userName,String password,int channel,String ip,int port){
        StringBuilder sb = new StringBuilder();
        sb.append("rtsp://");
        sb.append(userName);
        sb.append(":");
        sb.append(password);
        sb.append("@");
        sb.append(ip);
        sb.append(":");
        sb.append(port);
        sb.append("/Streaming/Channels/");
        sb.append(channel);
        sb.append("?videoCodecType=H.264");
        return sb.toString();
    }

    /**
     * 获取rtmp地址
     * rtmp://10.10.10.233:1935/live/1
     * @param ip nginx_flv服务 ip地址
     * @param port nginx_flv服务 端口
     * @param appName  流标识
     * @return rtmp地址
     */

    public static String getRtmpUrl(String ip,String port,Integer appName){
        StringBuilder sb = new StringBuilder();
        sb.append("rtmp://");
        sb.append(ip);
        sb.append(":");
        sb.append(port);
        sb.append("/live/");
        sb.append(appName);
        return sb.toString();
    }

    /**
     * 获取前端播放地址 前端转发到nginx或其他代里服务器
     * @param flvPort nginx_flv服务 端口
     * @param appName 设备id 流标识
     * @return 前端播放地址
     */
    public static String flvUrl(String flvPort,Integer appName){
        StringBuilder sb = new StringBuilder();
        sb.append("/flv?port=");
        sb.append(flvPort);
        sb.append("&app=live&stream=");
        sb.append(appName);
        return sb.toString();
    }
}
